package com.ruoyi.merchant.domain;

import com.baomidou.mybatisplus.annotation.TableField;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;
import lombok.Data;
import lombok.EqualsAndHashCode;
import net.sf.jsqlparser.expression.DateTimeLiteralExpression;

import java.math.BigDecimal;
import java.util.Date;

/**
 * 商家对象 merchants
 */
@Data
@EqualsAndHashCode(callSuper = true)
public class Merchant extends BaseEntity {

    private static final long serialVersionUID = 1L;

    /** 商家ID */
    private Long merchantId;

    /** 关联sys_user表的user_id（逻辑外键） */
    private Long userId;

    /** 商家名称 */
    private String merchantName;

    /** 联系人 */
    private String contactPerson;

    /** 联系电话 */
    private String contactPhone;

    /** 商家电话登录密码 */
    private String merchantPassword;

    /** 商家头像 */
    private String avatarUrl;

    /** 商家地址 */
    private String address;

    /** 纬度 */
    private BigDecimal latitude;

    /** 经度 */
    private BigDecimal longitude;

    /** 营业执照号 */
    private String businessLicense;

    /** 食品经营许可证号 */
    private String foodLicense;

    /** 营业状态：0-营业，1-休息，2-封禁 */
    private Integer status;

    /** 综合评分 */
    private BigDecimal rating;

    /** 删除时间（软删除） */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date deletedAt;

    /** 创建时间 */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @TableField("created_at")
    private Date createdAt;

    /** 更新时间 */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @TableField("updated_at")
    private Date updatedAt;

    /** 预留字段1 */
    private String externField1;

    /** 预留字段2 */
    private String externField2;

    /** 自动接单：0-关闭，1-开启 */
    @Excel(name = "自动接单", readConverterExp = "0=关闭,1=开启")
    private Integer autoAcceptOrder;

    /** 自动接单预计完成时间（分钟） */
    @Excel(name = "预计完成时间（分钟）")
    private Integer autoAcceptTime;
}